In a cloud computing environment, computing is delivered as a service rather than a product, whereby shared resources, software and information are provided to computers and other devices as a metered service over a network, such as the Internet. In such an environment, computation, software, data access and storage services are provided to users that do not require knowledge of the physical location and configuration of the system that delivers the services.
Users may divide the cloud computing environment into one or more “cloud groups,” where each cloud group may include a group of physical compute nodes (e.g., servers in racks in a data center) that contain similar hypervisor capabilities. A hypervisor (also called a virtual machine manager) is one of many virtualization techniques allowing multiple operating systems, termed guests, to run concurrently on a host computer. The hypervisor presents to the guest operating systems a virtual operating platform and manages the execution of the guest operating systems.
A user may group the compute nodes to form a cloud group by any logic the user chooses. For example, the user may create a cloud group for ESX® hypervisors and create another cloud group for z/VM® hypervisors. In another example, a user may create a cloud group for their development organization and create another cloud group to run production workload.
Currently, a user manually assigns the compute nodes to form a cloud group, which requires the user to possess an understanding of the cloud computing environment and its composition. For example, a user may want to select compute nodes that reside in different parts of the cloud computing environment to create a cloud group that provides high availability, such as to ensure a prearranged level of operational performance will be met during a contractual measurement period (e.g., having a backup compute node in case one of the compute nodes fails). However, users may not possess such an understanding of the cloud computing environment and its composition.
As a result, users may not be able to optimally select a group of compute nodes to form a cloud group that meets their desired needs, let alone in an efficient manner.